Attacking the Bottlenecks of Back lling Schedulers

نویسندگان

  • Dmitry Zotkin
  • Peter J. Keleher
  • Dejan Perkovic
چکیده

Backklling is a simple and eeective way of improving the utilization of space-sharing schedulers. Simple rst-come-rst-served approaches are ineeective because large jobs can fragment the available resources. Backklling schedulers address this problem by allowing jobs to move ahead in the queue, provided that they will not delay subsequent jobs. Previous research has shown that inaccurate estimates of execution times can lead to better backklling schedules. In the rst part of this study, we characterize this eeect on several workloads, and show that average slowdowns can be eeectively reduced by systematically lengthening estimated execution times. Further, we show that the average job slowdown metric can be addressed directly by sorting jobs by increasing execution time. Finally , we modify our sorting scheduler to ensure that incoming jobs can be given hard guarantees. The resulting scheduler guarantees to avoid starvation, and performs signiicantly better than previous backklling schedulers. In the second part of this study, we show how queue randomization and even more a combination of queue randomization and sorting by job length can improve performance. We show that these improvements are better then with queue sorting by job length alone in the simulation with actual estimates of job running times. We investigate the real characteristics of these estimates, and show the wide range of overestimation. To exploit even more randomization and queue sorting, we eliminate guarantees from backklling algorithm, and show signiicant improvements. Finally, we show a limited usefulness of these guarantees, and show that queue sorting criteria can be modiied to prevent starvation in the modiied backklling algorithm.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Job Length Estimation and Performance in Back lling Schedulers

Back lling is a simple and e ective way of improv ing the utilization of space sharing schedulers Sim ple rst come rst served approaches are ine ective be cause large jobs can fragment the available resources Back lling schedulers address this problem by allowing jobs to move ahead in the queue provided that they will not delay subsequent jobs Previous research has shown that inaccurate esti ma...

متن کامل

Characterizing Task Scheduling Performance Based on Data Reuse

Through the past years, several scheduling heuristics were introduced to improve the performance of task-based applications, with schedulers increasingly becoming aware of memory-related bottlenecks such as data locality and cache sharing. However, there are not many useful tools that provide insights to developers about why and where different schedulers do better scheduling, and how this is r...

متن کامل

Thwarting Virtual Bottlenecks in Multi-Bitrate Streaming Servers

Current cycle-based disk IO schedulers for multi-bitrate streaming servers are unable to avoid the formation of virtual bottlenecks. We term a bottleneck as virtual when it occurs within a single resource subsystem, and it is possible to use a secondary under-utilized resource to thwart the bottleneck. We present stream combination, an IO scheduling technique that addresses this problem. Stream...

متن کامل

Lube: Mitigating Bottlenecks in Wide Area Data Analytics

Over the past decade, we have witnessed exponential growth in the density (petabyte-level) and breadth (across geo-distributed datacenters) of data distribution. It becomes increasingly challenging but imperative to minimize the response times of data analytic queries over multiple geo-distributed datacenters. However, existing scheduling-based solutions have largely been motivated by pre-estab...

متن کامل

Predicting software performance in symmetric multi-core and multiprocessor environments

With today’s rise of multi-core processors in the desktop market and in common server systems, concurrency becomes a ubiquitous challenge in software development. Concurrency allows the improvement of software performance by exploiting available processor cores. However, possible performance gained by concurrency can be limited by software bottlenecks or inherently sequential parts of the appli...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2000